//P1101
#include <iostream>
#include <cstdio>
#include <cstring>

#define N 105

using namespace std;

struct node{
    int x;
    int y;
}c[N];

char a[N][N];
char tgt[] = "yizhong";
bool vis[N][N];

const int dlt[][2] = {{-1,-1},{-1,0},{-1,1},{0,-1},{0,1},{1,-1},{1,0},{1,1}};

void dfs(int x, int y, node c[], int k, int cur){
    if(cur == 7){
        for(int i = 0; i < 7; i++){
            vis[c[i].x][c[i].y] = true;
        }
    }
    else{
        int dx = x + dlt[k][0];      int dy = y + dlt[k][1];
        if(cur == 6 || a[dx][dy] == tgt[cur+1]){
            c[cur].x = x;   c[cur].y = y;
            dfs(dx, dy, c, k, ++cur);
        }
    }
}

int main(){
    memset(vis, false, sizeof(vis));
    int n;
    cin >> n;
    for(int i = 0; i < n ; i++){
        scanf("%s", &a[i]);
    }
    for(int i = 0; i < n; i++){
        for(int j = 0; j < n; j++){
            if(a[i][j] == 'y'){
                for(int k = 0; k < 8; k++){
                    int x = i + dlt[k][0];
                    int y = j + dlt[k][1];
                    if(a[x][y]=='i'){
                        dfs(i,j,c,k,0);

                    }
                }
            }
        }
    }
    for(int i = 0; i < n; i++){
        for(int j = 0; j < n; j++){
            if(vis[i][j])   printf("%c", a[i][j]);
            else printf("*");
        }
        printf("\n");
    }
	return 0;
}